//引包
var fs = require("fs");
var express = require("express");
var path = require("path");
// 引入 路由文件
var router = require("./router");
var session = require("express-session");

// 引入session中间件
var session = require("express-session");

// 引包   这个包是用来 通过 post请求 来实现重定向
var bodyParser = require("body-parser");

//创建 web 服务器
var app = express();

// 在express中 获取post 请求数据  安装 npm  install body-parser
// 配置模板引擎 和 body-parser 一定要在 app.use(router)   挂载路由之前(重点)
// 这里显示 bodyParser以被弃用 ， 这可以忽略
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());

//开放公共资源 及 node_modules 文件夹
// 这里 采用 动态的绝对路径  以及 path.join 来拼接路径
app.use("/public/", express.static(path.join(__dirname + "/public")));
app.use("node_modules", express.static(path.join(__dirname + "/node_modules")));

// 更改 模板引擎 后缀
app.engine("html", require("express-art-template"));

app.use(
  session({
    // 配置加密字符串，它会在原有加密基础之上和这个字符串拼起来去加密
    // 目的是为了增加安全性，防止客户端恶意伪造
    secret: "itcast",
    resave: false,
    saveUninitialized: false, // 无论你是否使用 Session ，我都默认直接给你分配一把钥匙
  })
);

// 配置session

// 创建路由
app.use(router);

// 开启路由
app.listen(3200, function () {
  console.log("app Server is running");
});

module.exports = app;
